package com.yunji.aggregate.service;

import com.yunji.aggregate.convert.AggregateDataConvert;
import com.yunji.aggregate.convert.AggregateParamConvert;
import com.yunji.aggregate.mapper.IOrderAggregateMapper;
import com.yunji.aggregate.model.dto.analysis.WalletTurnoverParam;
import com.yunji.aggregate.model.vo.base.WalletTurnoverVO;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * @author : peter-zhu
 * @date : 2024/12/16 16:13
 * @description : TODO
 **/
@Service
public class OrderAggregateService {


    @Resource
    private IOrderAggregateMapper aggregateMapper;

    public List<WalletTurnoverVO> walletTurnoverList(WalletTurnoverParam param) {
        AggregateParamConvert.turnoverParam(param);
        List<WalletTurnoverVO> list = aggregateMapper.walletTurnoverList(param);
        AggregateDataConvert.turnoverList(list);
        return list;
    }

//    public List<TradeVO> searchTrade(TradeParam params) {
//        AggregateParamConvert.tradeParam(params);
//        params.setUserTypes(AggregateDataConvert.getUserType());
//
//        // 收益查员工分成和代理分成
//        if (TradeTypes.PRODUCT_BUYING.getCode().equals(params.getTradeType())) {
//            int[] array = {22, 23};
//            params.setTypesArray(array);
//        }
//
//        // 退款查员工退款和代理退款
//        if (TradeTypes.PRODUCT_BUYING_REFUND.getCode().equals(params.getTradeType())) {
//            int[] array = {25, 26};
//            params.setTypesArray(array);
//        }
//
//        if (BeanUtils.isNotNull(params.getTradeTypesArray())) {
//            String[] array = params.getTradeTypesArray().split("_");
//            params.setTypesArray(Arrays.stream(array).mapToInt(Integer::parseInt).toArray());
//        }
//        return aggregateMapper.tradeList(params);
//    }
//
//    /*-------------------------------------搜索栏--------------------------------*/
//
//
//    /**
//     * @param userName 账户名称
//     * @Title searchUserName
//     * @Desc 账户名称匹配搜索
//     * @Date 2024-09-09 15:58:26.509
//     * @Return List<String> 匹配结果
//     */
//    public List<String> searchUserName(String userName) {
//        TradeParam param = new TradeParam();
//        param.setSearchField("t.nick_name");
//        param.setUserName(userName);
//        AggregateParamConvert.tradeParam(param);
//        return searchTradeField(param);
//    }
//
//    /**
//     * @param cabinetName 货柜名称
//     * @Title searchContainerName
//     * @Desc 货柜名称匹配搜索
//     * @Date 2024-09-09 15:57:56.840
//     * @Return List<String> 匹配结果
//     */
//    public List<String> searchContainerName(String cabinetName) {
//        TradeParam param = new TradeParam();
//        param.setSearchField("c.container_name");
//        param.setContainerName(cabinetName);
//        AggregateParamConvert.tradeParam(param);
//        return searchTradeField(param);
//    }
//
//    /**
//     * @param productName 商品名称
//     * @Title searchProductName
//     * @Desc 商品名称匹配搜索
//     * @Date 2024-09-09 15:57:29.900
//     * @Return List<String> 匹配结果
//     */
//    public List<String> searchProductName(String productName) {
//        TradeParam param = new TradeParam();
//        param.setSearchField("p.product_name");
//        param.setProductName(productName);
//        AggregateParamConvert.tradeParam(param);
//        return searchTradeField(param);
//    }
//
//    private List<String> searchTradeField(@Param("param") TradeParam param) {
//        return aggregateMapper.searchTradeField(param);
//    }
}
